package cn.jjxx.modules.sys.service;

import java.util.List;
import cn.jjxx.core.common.service.ICommonService;
import cn.jjxx.modules.sys.entity.BillRule;

/**   
 * @Title: 单号规则
 * @Description: 单号规则
 * @author zcg
 * @date 2018-08-09 14:01:03
 * @version V1.0   
 *
 */
public interface IBillRuleService extends ICommonService<BillRule> {
	
	/**
	 * @Description: 批量插入数据 .<br>
	 * @author zcg .<br>
	 * @date 2018-08-09 14:01:03.<br>
	 */
	boolean insertBatch(List<BillRule> list);

	/**
	 * @Description: 批量更新单据 .<br>
	 * @author zcg .<br>
	 * @date 2018-08-09 14:01:03.<br>
	 */
	boolean updateBatch(List<BillRule> list);
	
	/**
	 * @Description: 生成单号 .<br>
	 * @param menuId 菜单Id.<br>
	 * @param params 传递sql参数.<br>
	 * @author 郑成功 .<br>
	 * @date 2018-8-10 上午9:32:29.<br>
	 */
	String createBillNum(String menuId,Object...params);
	
	/**
	 * @Description: 生成单号 .<br>
	 * @param menuId 菜单Id.<br>
	 * @param cls 需要生成的单据的实体类名.<br>
	 * @param params 传递sql参数.<br>
	 * @author 郑成功 .<br>
	 * @date 2018-8-10 上午9:33:17.<br>
	 */
	String createBillNum(String menuId,Class<?> cls,Object...params);
	
	/**
	 * @Description: 生成单号 .<br>
	 * @param menuId 菜单Id.<br>
	 * @param tableName 需要生成的单据的数据库表名.<br>
	 * @param params 传递sql参数.<br>
	 * @author 郑成功 .<br>
	 * @date 2018-8-10 上午9:34:21.<br>
	 */
	String createBillNum(String menuId,String tableName,Object...params);
	
	/**
	 * @Description: 生成单号 .<br>
	 * @param billRuleNumber 规则单号.<br>
	 * @param params 传递sql参数.<br>
	 * @author 郑成功 .<br>
	 * @date 2018-8-10 上午9:32:29.<br>
	 */
	String createBillNumber(String billRuleNumber,Object...params);
	
	/**
	 * @Description: 生成单号 .<br>
	 * @param billRuleNumber 规则单号.<br>
	 * @param cls 需要生成的单据的实体类名.<br>
	 * @param params 传递sql参数.<br>
	 * @author 郑成功 .<br>
	 * @date 2018-8-10 上午9:33:17.<br>
	 */
	String createBillNumber(String billRuleNumber,Class<?> cls,Object...params);
	
	/**
	 * @Description: 生成单号 .<br>
	 * @param billRuleNumber 规则单号.<br>
	 * @param tableName 需要生成的单据的数据库表名.<br>
	 * @param params 传递sql参数.<br>
	 * @author 郑成功 .<br>
	 * @date 2018-8-10 上午9:34:21.<br>
	 */
	String createBillNumber(String billRuleNumber,String tableName,Object...params);
}

